/// <summary>
/// A definition of a Minecraft block.
/// </summary>
class Block
{
public:
	/// <summary>
	/// The ID of the block.
	/// </summary>
	int ID;

	/// <summary>
	/// The data/damage value of this block.
	/// </summary>
	byte Data;

	/// <summary>
	/// Initializes a new instance of the <see cref="Block" /> class, set to an Empty/AIR block.
	/// </summary>
	Block();
	
	/// <summary>
	/// Initializes a new instance of the <see cref="Block" /> class from an ID/data pair.
	/// </summary>
	/// <param name="id">The id.</param>
	/// <param name="data">The data.</param>
	Block(const int &id, const byte &data);

	/// <summary>
	/// Determines whether this Block is empty/AIR.
	/// </summary>
	/// <returns>True if the block is empty/AIR, false otherwise.</returns>
	bool IsEmpty() const;
}